最近考虑换电脑,一般来说7月的时候苹果会推出教育优惠买MacBook送Beats耳机的活动,为了第一时间发现活动,挑到颜色好看的耳机,写了一个小脚本定时监控教育商店的主页 https://www.apple.com.cn/cn-k12/shop
看看有没有更新了关键词“耳机”或者“Beats” ,发现活动开始后通过邮件的方式提醒。
Apple_Back-to-School_check
Apple暑期返校送Beats耳机活动监控,发现活动开始后通过邮件的方式提醒。
相比于之前写Nike定制监控的脚本 https://github.com/metang326/nike_by_you_check 这次尝试了一下python发送邮件提醒,居然非常简单,用的库也是自带的(我使用的是python3.7)
使用流程
- git clone代码到本地
- 把代码中的邮箱与密码换成自己的
- 把执行脚本的语句添加到Linux的定时任务
代码流程
- 抓取教育商店的主页 https://www.apple.com.cn/cn-k12/shop
- 看看有没有更新了关键词“耳机”或者“Beats”
- 如果发现这个活动开始了,发邮件通知自己;
- 如果没有开始,则每天八点的时候邮件自己一次,通知“活动还没有开始”,确保监控是正常运行的
code
https://github.com/metang326/Apple_Back-to-School_check/blob/master/check.py
如何给自己发送邮件
步骤:申请一个新邮箱,在【设置】页面的POP3/SMTP/IMAP标签,给它开启IMAP/SMTP服务,邮箱系统会给一个密码,把它填入下面的password即可,其他的收件邮箱、发件邮箱等等换成自己的,正文和标题也可以自己随便定义。smtp_server是发件邮箱的地址,如果是163或者qq邮箱是不同的,在邮箱系统的页面上会标注的。
如何设置定时任务
把这个脚本设置成系统的定时任务,每天定时执行几次。linux增加crontab定时任务的方法博客里有写:
我是设置了每小时check一次
sudo vim /etc/crontab
增加下面这行:
12 /1 root python3 /home/ivic/tmy_repos/Apple_Back-to-School_check/check.py
然后重启服务
sudo /etc/init.d/cron restart
[ ok ] Restarting cron (via systemctl): cron.service.
这样就是每小时的12分这个时刻,执行一下检测脚本,如果发现官网里出现了关键词就发送邮件进行通知;否则的话就直接结束。
测试
可以先通过在代码手动增加一下关键词,进行测试,然后发现准时收到了提醒邮件,Done!
text += “Beats耳机”